--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Commit 0855223f575e538ed877b433aae24f963d4ac45b
Parents : ad84628
Author : Ivan <ivan@quad4.io>
Signature : Signature validation error
Date : 2026-04-24T15:03:27-05:00
fix(android): update paths in Taskfile and CI workflows to reflect changes in APK build process and directory structure
Changes
3 files changed, 20 insertions(+), 13 deletions(-)
Diff
diff --git a/.github/workflows/android-build.yml b/.github/workflows/android-build.yml
index 507d544a..82be94aa 100644
--- a/.github/workflows/android-build.yml
+++ b/.github/workflows/android-build.yml
@@ -145,6 +145,12 @@ jobs:
- name: Build Android wheels
run: bash scripts/build-android-wheels-local.sh --python-minor "${PYTHON_VERSION}" --chaquopy-ref "${CHAQUOPY_REF}" --abis arm64-v8a,x86_64,armeabi-v7a
+ - name: Build MeshChatX wheel for repository bundle
+ run: |
+ set -euo pipefail
+ python -m pip install -U pip build
+ python -m build --wheel -o dist .
+
- name: Verify required Android wheels are present
run: |
set -euo pipefail
@@ -177,20 +183,20 @@ jobs:
working-directory: android
run: |
chmod +x gradlew
- ./gradlew --no-daemon :app:testSlimDebugUnitTest
+ ./gradlew --no-daemon :app:testDebugUnitTest
- name: Build debug APK
working-directory: android
run: |
chmod +x gradlew
- ./gradlew --no-daemon :app:assembleSlimDebug
+ ./gradlew --no-daemon :app:assembleDebug
- name: Build release APK
if: ${{ github.event_name != 'workflow_dispatch' || inputs.build_release }}
working-directory: android
run: |
chmod +x gradlew
- ./gradlew --no-daemon :app:assembleSlimRelease
+ ./gradlew --no-daemon :app:assembleRelease
- name: Upload wheels
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
@@ -203,7 +209,7 @@ jobs:
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
with:
name: meshchatx-android-debug-${{ github.ref_name }}-${{ github.run_id }}
- path: android/app/build/outputs/apk/slim/debug/*.apk
+ path: android/app/build/outputs/apk/debug/*.apk
if-no-files-found: error
- name: Upload test reports
@@ -221,5 +227,5 @@ jobs:
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
with:
name: meshchatx-android-release-${{ github.ref_name }}-${{ github.run_id }}
- path: android/app/build/outputs/apk/slim/release/*.apk
+ path: android/app/build/outputs/apk/release/*.apk
if-no-files-found: error
diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml
index 6f539fa6..c6ca9ad6 100644
--- a/.github/workflows/docker.yml
+++ b/.github/workflows/docker.yml
@@ -1,4 +1,5 @@
# Build multi-arch image, push to GHCR, and keyless-sign the manifest (Cosign).
+# Runs on push to dev (tags :dev and :sha-*), tags (semver tags), and workflow_dispatch.
#
# Pinned third-party actions (bump tag and SHA together when upgrading).
# Automated check: first step resolves each tag via api.github.com and
@@ -21,6 +22,8 @@ name: Docker (GHCR)
on:
workflow_dispatch:
push:
+ branches:
+ - dev
tags:
- "*"
diff --git a/Taskfile.yml b/Taskfile.yml
index 73d97e91..7fff36c0 100644
--- a/Taskfile.yml
+++ b/Taskfile.yml
@@ -479,7 +479,7 @@ tasks:
echo "Preparing Android assets..."
mkdir -p "{{.PYTHON_SRC_DIR}}"
rm -rf "{{.PYTHON_SRC_DIR}}/meshchatx"
- echo "MeshChatX Python tree is synced by Gradle into app/src/slim|full/python/meshchatx (see android/app/build.gradle)."
+ echo "MeshChatX Python tree is synced by Gradle into app/src/main/python/meshchatx (see android/app/build.gradle)."
android:wheels:
desc: Build the Android (Chaquopy) wheels into android/vendor/. Mirrors CI.
@@ -495,30 +495,28 @@ tasks:
--abis "{{.ANDROID_WHEEL_ABIS}}"
android:build:
- desc: Build Debug APK (slim flavor, universal ABI packaging, arm64-v8a only unless overridden)
+ desc: Build Debug APK (universal ABI packaging; arm64-v8a only unless overridden)
deps: [android:prepare]
vars:
- MESHCHATX_ANDROID_FLAVOR: '{{.MESHCHATX_ANDROID_FLAVOR | default "slim"}}'
MESHCHATX_ABIS: '{{.MESHCHATX_ABIS | default "arm64-v8a"}}'
MESHCHATX_ABI_PACKAGING: '{{.MESHCHATX_ABI_PACKAGING | default "universal"}}'
cmds:
- - cd "{{.ANDROID_DIR}}" && ./gradlew :app:assemble{{title (.MESHCHATX_ANDROID_FLAVOR | default "slim")}}Debug -PmeshchatxAbis={{.MESHCHATX_ABIS}} -PmeshchatxAbiPackaging={{.MESHCHATX_ABI_PACKAGING}}
+ - cd "{{.ANDROID_DIR}}" && ./gradlew :app:assembleDebug -PmeshchatxAbis={{.MESHCHATX_ABIS}} -PmeshchatxAbiPackaging={{.MESHCHATX_ABI_PACKAGING}}
android:build:release:
- desc: Build Release APK (same flavor / ABI defaults as android:build unless overridden)
+ desc: Build Release APK (same ABI defaults as android:build unless overridden)
deps: [android:prepare]
vars:
- MESHCHATX_ANDROID_FLAVOR: '{{.MESHCHATX_ANDROID_FLAVOR | default "slim"}}'
MESHCHATX_ABIS: '{{.MESHCHATX_ABIS | default "arm64-v8a"}}'
MESHCHATX_ABI_PACKAGING: '{{.MESHCHATX_ABI_PACKAGING | default "universal"}}'
cmds:
- - cd "{{.ANDROID_DIR}}" && ./gradlew :app:assemble{{title (.MESHCHATX_ANDROID_FLAVOR | default "slim")}}Release -PmeshchatxAbis={{.MESHCHATX_ABIS}} -PmeshchatxAbiPackaging={{.MESHCHATX_ABI_PACKAGING}}
+ - cd "{{.ANDROID_DIR}}" && ./gradlew :app:assembleRelease -PmeshchatxAbis={{.MESHCHATX_ABIS}} -PmeshchatxAbiPackaging={{.MESHCHATX_ABI_PACKAGING}}
android:clean:
desc: Clean Android artifacts
cmds:
- cd "{{.ANDROID_DIR}}" && ./gradlew clean
- - rm -rf "{{.PYTHON_SRC_DIR}}/meshchatx" "{{.ANDROID_DIR}}/app/src/slim/python/meshchatx" "{{.ANDROID_DIR}}/app/src/full/python/meshchatx"
+ - rm -rf "{{.PYTHON_SRC_DIR}}/meshchatx" "{{.ANDROID_DIR}}/app/src/main/python/meshchatx"
# --- Maintenance ---
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────